#ifndef _C_RENDERER_H_
#define _C_RENDERER_H_

#include <vector>
#include "types/types.h"

using namespace std;

class CImage;
class CView;

//----------------------------------------------
struct CVertex
{
	float x, y, z;
	float u, v;
};

extern const CVertex g_tQuad[4];

//----------------------------------------------
class SRenderer
{
	DECLARE_SINGLETON(SRenderer);
public:
	SRenderer();
	virtual ~SRenderer() {}

	virtual bool		loadTexture		(CImage& oImage) = 0;
	virtual void		unloadTexture	(CImage& oImage) = 0;

private:
	CImage*				m_pActiveImages[2];
	vector<CView*>		m_oViews;
};

#endif
